package com.qys.livesMall.shortVideo.model.vo.app;


import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 音乐库信息表(MusicLibrary)表实体类
 *
 * @author makejava
 * @since 2023-09-05 16:08:51
 */
@Data
@Schema(name = "MusicLibraryVO", description = "音乐库")
public class MusicLibraryVO {

    @JsonSerialize(using = ToStringSerializer.class)
    @Schema(description = "音乐id")
    private Long musicId;

    @Schema(description = "音乐标题")
    private String title;

    @Schema(description = "音乐的艺术家或演唱者")
    private String artist;

    @Schema(description = "音乐类型或流派")
    private String genre;

    @JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd")
    @Schema(description = "音乐发布日期")
    private LocalDate releaseDate;

    @Schema(description = "音乐时长")
    private Integer duration;

    @Schema(description = "音乐描述")
    private String description;

    @Schema(description = "音频文件的URL或路径")
    private String audioUrl;

    @JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd HH:mm:ss")
    @Schema(description = "记录创建时间")
    private LocalDateTime createTime;

    @Schema(description = "创建人")
    private String createBy;
}

